package com.hellowx.qydcdev.service;

import com.github.pagehelper.PageInfo;
import com.hellowx.qydcdev.entity.Goods;
import com.hellowx.qydcdev.entity.GoodsVO;
import com.hellowx.qydcdev.entity.State;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * Created on 2022/1/13.
 *
 * @author Hello WX
 */
public interface GoodsService {

    /**
     * 查询商品
     * @return list
     * @param goods 查询信息(goodsId)   商品名称 和 类别Id(categoryId)
     * @param pageNum 页码
     * @param pageSize 页面大小
     * @param request request
     */
    PageInfo<GoodsVO> selectGoodsBySearch(Goods goods, int pageNum, int pageSize, HttpServletRequest request);

    /**
     * 删除商品
     * @param goodsId id
     * @return 消息
     */
    String deleteGoodsById(Long goodsId);

    /**
     * 新增
     * @param goods 商品id
     * @return goodsId
     */
    String insertGoods(Goods goods);

    /**
     * 口味列表
     * @param goodsId 商品id
     * @return list
     */
    List<State> listStateListByGoodsId(Long goodsId);

    /**
     * 添加口味
     * @param state object
     * @return 影响行数
     */
    int addState(State state);

    /**
     * 删除口味
     * @param id id
     * @return 影响行数
     */
    int deleteState(Long id);

    /**
     *  获取商品id
     * @param goodsId 商品id
     * @return goods
     */
    GoodsVO getGoodsById(Long goodsId);

    /**
     * 更新商品
     * @param goods 商品
     * @return 信息
     */
    String updateGoodsById(Goods goods);
}
